package elicecn.util.matcher;

/**
 * 手机号码匹配器。在号码携带实施前可用。
 */
public class MobileMatcher {
	/**
	 * 中电信手机号
	 * 
	 * @param mobile
	 * @return
	 */
	public static boolean matchesChinaTelecom(String mobile) {
		String regex = "^1(((33|53|80|89)[0-9])|(349))[0-9]{7}$";
		return mobile.matches(regex);
	}

	/**
	 * 中移动手机号
	 * 
	 * @param mobile
	 * @return
	 */
	public static boolean matchesChinaMobile(String mobile) {
		String regex = "^1((34[0-8])|((3[5-9])|(5[0-27-9])|(8[78]))[0-9])[0-9]{7}$";
		return mobile.matches(regex);
	}

	/**
	 * 中联通手机号
	 * 
	 * @param mobile
	 * @return
	 */
	public static boolean matchesChinaUnicom(String mobile) {
		String regex = "^1((3[0-2])|(5[56])|(8[56]))[0-9]{8}$";
		return mobile.matches(regex);
	}

	/**
	 * 中国手机号
	 * 
	 * @param mobile
	 * @return
	 */
	public static boolean matchesMobile(String mobile) {
		String regex = "^1((3[0-9])|(5[0-35-9])|(8[5-9]))[0-9]{8}$";
		return mobile.matches(regex);
	}
}
